package com.youlai.boot.modules.content.model.vo;

import java.io.Serial;
import java.io.Serializable;
import java.time.LocalDateTime;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Getter;
import lombok.Setter;
import java.time.LocalDateTime;
import java.util.List;

/**
 * 评论视图对象
 *
 * @author lz0816
 * @since 2025-03-06 16:49
 */
@Getter
@Setter
@Schema( description = "评论视图对象")
public class LzCommentVO implements Serializable {

    @Serial
    private static final long serialVersionUID = 1L;

    private Long id;
    @Schema(description = "评论类型（0代表文章评论，1代表友链评论）")
    private String type;
    @Schema(description = "文章id")
    private Long articleId;
    @Schema(description = "根评论id")
    private Long rootId;
    @Schema(description = "评论内容")
    private String content;
    @Schema(description = "所回复的目标评论的userid")
    private Long toCommentUserId;
    @Schema(description = "回复目标评论id")
    private Long toCommentId;
    private Long createBy;
    private LocalDateTime createTime;
    private Long updateBy;
    private LocalDateTime updateTime;
    @Schema(description = "删除标志（0代表未删除，1代表已删除）")
    private Integer isDeleted;

    @Schema(description = "根评论下的子评论")
    private List<LzCommentVO> children;

    @Schema(description = "用户头像")
    private String avatar;
    @Schema(description = "用户昵称")
    private String nickName;
    @Schema(description = "对谁回复")
    private String toCommentUserName;
}
